"""
推导式
    概述
        推导式也叫解析式，属于Python中的一种特有写法，目的是简化代码
    分类
        列表推导式
        集合推导式
        字典推导式
    格式：
        列表推导式
            变量名 = [临时变量 for 临时变量 in 列表  if 判断条件 ]
        集合推导式
            变量名 = {临时变量 for 临时变量 in 容器 if 判断条件 }
        字典推导式
            变量名 = {key,value for key,value in 字典  if 判断条件 }
"""

# 演示集合推导式
# 生成0-9之间所有的偶数  集合
set1 = {i for i in range(10) if i % 2 == 0}
print(set1)

# 练习： 创建一个集合，数据为下方列表的二次方
# 用集合的目的是为了去重
list1 = [1,2,3,4,1,4]

set2 = {i**2 for i in list1 }
print(set2)


# 演示字典推导式
#  练习：  创建一个臭小子点:key是 1-5 直接的数字，value 是该数字的平方
#{1:1, 2:4 , 3:9,  4:16, 5:25}

dict1 = {i:i**2 for i in range(1,6)}
print(dict1)

# 作业 把下列两个列表拼接成一个字典
columns = ['name','age','address']
persons = ['聂茹凤',18,'北京市西城区']

dict2 = {columns[i]:persons[i] for i in range(len(columns))}
print(dict2)
